<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // // let array = new Array()
    // // console.log(array)
    // // for(i = 0; i < 10; i++) {
    // //     array[i] = i;
    // // }
    // // let new_array = new Array()
    // // // 将array中所有的元素追加到new_array中
    // // for(i = 0 ;i < array.length; i++) {
    // //     new_array.push(array[i])
    // // }
    // // console.log(new_array)
    // // new_array.splice(1, 1)
    // // console.log(new_array)
    // // 定义的没有参数列表，也没有返回值的一个函数
    // a = 10
    // function hello() {
    //     console.log("hello")
    // }
    // // 定义一个有参数列表，有返回值的一个函数
    // function HelloXiaobite(num, name) {
    //     console.log(num + "Hello" + name)
    //     return 1;
    // }
    // let b = hello()
    // console.log(typeof(b))
    // let a = HelloXiaobite(1, "小明")
    // console.log(typeof(a))
    // 实参个数比形参个数少
    // HelloXiaobite();
    // HelloXiaobite(1, "小明", 3)
    // let result = function Sum() {
    //     // 计算1~100之间的和
    //     ret = 0
    //     for(i = 0; i <= 100; i++) {
    //         ret += i
    //     }
    //     return ret
    // }
    // // console.log(result())
    // // let b = function() {
    // //     console.log(arguments)
    // // }
    // // b();
    // // b(1, 2, 3)
    // let num = 10
    // function test01() {
    //     let num = 100
    //     console.log(num)
    // }
    // function test02() {
    //     let num = 200
    //     console.log(num)
    // }
    // // console.log(num)
    // // test01()
    // // test02()
    // for(i = 0; i <= 100; i++) {

    // }
    // console.log(i)
    // // 在JS，在for循环中如果变量没有通过let，var定义，此时就变成一个全局变量
    // console.log(a)
    // let num = 10
    // function test01() {
    //     // let num = 100
    //     // 100
    //     console.log(num)
    //     function test02() {
    //         // let num = 200
    //         // 200
    //         // 100
    //         console.log(num)
    //     }
    //     test02()
    // }
    // test01()
    // let a = {}
    // let student = {
    //     name:"沙天琦",
    //     height:"163",
    //     weight:"53kg",
    //     sayHello:function() {
    //         console.log("Hello")
    //     }
    // }
    // console.log(student.name)
    // console.log(student['height'])
    // console.log(student['weight'])
    // student.sayHello()
    // let student = {}
    // student.name = "小明"
    // student.height = 180
    // student['weight'] = 75
    // student.SayHello = function() {
    //     console.log("Say Hello")
    // }
    // console.log(student.name)
    // console.log(student['height'])
    // student.SayHello()
    // 在狗仔函数中不需要return
    // function People(name, height, weight) {
    //     this.name = name
    //     this.height = height
    //     this.weight = weight
    //     this.Say = function() {
    //         console.log(name + "say hello")
    //     }
    // }

    // let xiaoming = new People("小明", 175, 75)
    // let zhangsan = new People("张三", 175, 75)
    // console.log(xiaoming)
    // xiaoming.Say()
    // console.log(zhangsan)
    // zhangsan.Say()
    class People {
        constructor(name, height, weight) {
            this.name = name
            this.height = height
            this.weight = weight
        }
        Say() {
            console.log(this.name + "正在说:Hello")
        }

        static other = "other"
        static Sum() {
            return 100
        }
    }

    
    let xiaoming = new People("小明", 175, 75)
    console.log(xiaoming)
    xiaoming.Say()
    alert(People.other)
    alert(People.Sum())

    class Student extends People {
        constructor(name, height, weight, number) {
            super(name, height, weight)
            this.number = number
        }
        Say() {
            alert(this.name)
        }
    }
    
    let student = new Student("张三", 180, 70, 1)
    console.log(student)
    student.Say()
    
</script>
</html>